//#ifndef TEST_PERSISTENCIA_H
//#define TEST_PERSISTENCIA_H
//
//#include "../src/persistencia/Persistor.h"
//
//class Test_Persistencia{
//private:
//Persistor* persistor;
//public:
//	//creo un persistor
//	Test_Persistencia();
//
//	//modo simplificado de uso de un objeto de la clase Persistor, y tambien para obtener los datos necesarios
//	void run(){
//
//		this->persistor = new Persistor();
//
//		this->persistor->leer();
//
//		this->imprimirListas();
//
//		//estos nombres van a ir en la ventana 1
//		Lista<cadena>* nombresEscenarios = persistor->getNombresEscenarios();
//		cout<<endl<<"nombres escenarios:  ";
//		this->imprimirNombres(nombresEscenarios);
//
//		//estos nombres van a ir en la ventana 2
//		Lista<cadena>* nombresObjetos = persistor->getNombresObjetos();
//		cout<<endl<<"nombres objetos: ";
//		this->imprimirNombres(nombresObjetos);
//
//		//...
//		//aca actualizar la lista de escenarios
//		//agregar Escenarios a la lista de esecenarios, claro con sus respectivos objetos arrastrados
//		///////////////////////////////////////////EJEMPLO:////////////////////////////////////////
//		cadena nombreEscenario = "Selva";
//
//		//creo 2 objetos para el escenario con nombre 'nombreEscenario'
//		Punto* pos1 = new Punto(2,2);
//		Punto* pos2 = new Punto(4,6);
//
//		Objeto objeto1("obj1", *pos1,"accion1","path1");
//		Objeto objeto2("obj2", *pos2,"accion2","path2");
//		Lista<Objeto>* objetosNuevos = new Lista<Objeto>();
//		objetosNuevos->agregar(objeto1);
//		objetosNuevos->agregar(objeto2);
//
//		persistor->actualizarObjetosDeEscenarioConNombre(nombreEscenario, objetosNuevos);
//
//		//a 'nombreEscenario' le cambio el fondo
//		persistor->actualizarFondoDeEscenarioConNombre("Llanura","nuevoFondo.bmp");
//		//...
//		////////////////////////////////////////////////////////////////////////////////////////
//
//		//en principio para probar la escritura la realiza en el archivo 'versionFinal.xml', pero
//		//lo correcto seria que escribiera en el mismo archivo el cual se utilizo para
//		//cargas las listas de escenarios y objetos
//		this->persistor->escribir();
//		//si quiere corrobar rapidamente que se escribio el xml como lo esperado, entonces comparar
//		//el archivo 'versionFinal.xml' con lo que imprimio la consola depues de el mensaje imprimirListas():
//
//		delete pos1;
//		delete pos2;
//
//		delete nombresObjetos;
//		delete objetosNuevos;
//
//	}
//private:
//	/*imprime por consola los escenarios definidos en el xml, luego de cargarlos
//	 * en una lista de escenarios
//	 * */
//	void imprimirEscenariosDefinidos();
//
//	/*imprime por consola los objetos definidos en el xml, luego de cargarlos
//	 * en una lista de objetos
//	 * */
//	void imprimirObjetosDefinidos();
//
//	/*imprime por consola la lista de escenarios y objetos que estan cargados la lista hasta el
//	 * momento que se llama al metodo.
//	 * */
//	void imprimirListas();
//
//	void imprimirNombres(Lista<cadena>* nombres);
//};
//
//#endif
//
//Test_Persistencia::Test_Persistencia(){
//	delete persistor;
//}
//
///*imprime por consola los escenarios definidos en el xml, luego de cargarlos
// * en una lista de escenarios
// * */
//void Test_Persistencia::imprimirEscenariosDefinidos(){
//	cout<<"\t<ESCENARIOS>"<<endl;
//	IteradorLista<Escenario> itEscenarios = this->persistor->getEscenarios()->iterador();
//	while (itEscenarios.tieneSiguiente()){
//		Escenario escenario = itEscenarios.siguiente();
//		cout<<"\t\t<ESCENARIO nombre = "<<escenario.getNombre()<<" fondo = "
//			<<escenario.getFondo()<<">"<<endl;
//
//		//recorro todos los objetos de este escenarios actual definido
//		IteradorLista<Objeto> itObjetos = escenario.getObjetos()->iterador();
//		while (itObjetos.tieneSiguiente()){
//			Objeto objeto = itObjetos.siguiente();
//			cout<<"\t\t\t<OBJETO nombre = "<<objeto.getNombre()<<" posX = "<<objeto.getPunto().getX()
//				<<" posY = "<<objeto.getPunto().getY()<<" />"<<endl;
//		}
//		cout<<"\t\t</ESCENARIO>"<<endl;
//	}
//	cout<<"\t<ESCENARIOS>"<<endl;
//}
//
///*imprime por consola los objetos definidos en el xml, luego de cargarlos
// * en una lista de objetos
// * */
//void Test_Persistencia::imprimirObjetosDefinidos(){
//	cout<<"\t<OBJETOS>"<<endl;
//	IteradorLista<Objeto> itObjetos = this->persistor->getObjetos()->iterador();
//	while (itObjetos.tieneSiguiente()){
//		Objeto objeto = itObjetos.siguiente();
//		cout<<"\t\t<OBJETO nombre = "<<objeto.getNombre()<<" posX = "<<objeto.getPunto().getX()
//			<<" posY = "<<objeto.getPunto().getY()<<" accion = "<<objeto.getAccion()
//			<<" path = "<<objeto.getPath()<<"/>"<<endl;
//	}
//	cout<<"\t</OBJETOS>"<<endl;
//}
//
//void Test_Persistencia::imprimirListas(){
//	cout<<endl<<"Inicia imprimirListas():"<<endl;
//	cout<<"<DISEÑO_ESCENARIO>"<<endl;
//	imprimirEscenariosDefinidos();
//	imprimirObjetosDefinidos();
//	cout<<"</DISEÑO_ESCENARIO>"<<endl;
//}
//void Test_Persistencia::imprimirNombres(Lista<cadena>* nombres){
//	IteradorLista<cadena> it = nombres->iterador();
//	while ( it.tieneSiguiente() ){
//		cadena nombreActual = it.siguiente();
//		cout<<nombreActual<<" ";
//	}
//	cout<<endl;
//}
